package HanJiaHomeWork;

/** 判定是否互为字符重排
 * 给定两个由小写字母组成的字符串 s1 和 s2，请编写一个程序，确定其中一个字符串的字符重新排列后，能否变成另一个字符串。
 *
 * 示例 1：
 * 输入: s1 = "abc", s2 = "bca"
 * 输出: true
 * 示例 2：
 * 输入: s1 = "abc", s2 = "bad"
 * 输出: false
 */
public class day7_1 {
    public boolean CheckPermutation(String s1, String s2) {
        if(s1.length() != s2.length()) return false;
        //维护一个数组来记录s1中字符出现的次数
        int [] arr = new int [128];
        for(int i =0;i<s1.length();i++){
            arr[s1.charAt(i)]++;
        }

        for(int i = 0;i<s2.length();i++){
            arr[s2.charAt(i)]--;
            if(arr[s2.charAt(i)]<0) return false;
        }
        return true;
    }

    public static void main(String[] args) {

    }
}
